オブジェクト指向入門 第2版 原則・コンセプト
https://images-na.ssl-images-amazon.com/images/I/41A2yC7UpOL._SX351_BO1,204,203,200_.jpg https://www.amazon.co.jp/dp/4798111112
目次
パートA 諸問題
第1章 ソフトウェアの品質
1.1 外的品質要因と内的品質要因
1.2 外的品質要因
1.3 ソフトウェアの保守について
1.4 本章のまとめ
1.5 参考文献
第2章 オブジェクト指向の基準
2.1 基準について
2.2 方法論と言語
2.3 実装と環境
2.4 ライブラリ
2.5 もっと詳しい予告編
2.6 参考文献とオブジェクトのリソース
パートB オブジェクト指向への道
第3章 モジュール性
3.1 5つの基準
3.2 5つの規則
3.3 5つの原則
3.4 本章のまとめ
3.5 参考文献
3.6 演習問題
第4章 再利用性へのアプローチ
4.1 再利用性の目標
4.2 何を再利用すべきか?
4.3 ソフトウェア開発における繰り返し
4.4 「非」技術的障害
4.5 技術的な問題
4.6 モジュール構造の5つの要件
4.7 伝統的なモジュール構造
4.8 多重定義と総称性
4.9 本章のまとめ
4.10 参考文献
第5章 オブジェクト技術への道
5.1 コンピュータ処理の中身
5.2 機能による分解
5.3 オブジェクトによる分解
5.4 オブジェクト指向によるソフトウェア構築
5.5 課題
5.6 本章のまとめ
5.7 参考文献
第6章 抽象データ型
6.1 基準
6.2 実装のバリエーション
6.3 オブジェクトを抽象的に見るには
6.4 仕様記述を形式化する
6.6 ソフトウェアを越えて
6.7 補助的な話題
6.8 本章のまとめ
6.9 参考文献
6.10 演習問題
パートC オブジェクト指向の技法
第7章 静的な構造:クラス
7.1 オブジェクトは主体ではない
7.2 ありがちな混乱を避けるために
7.3 クラスの役割
7.4 一様な型体系
7.5 単純なクラス
7.6 基本的な構文規約
7.7 オブジェクト指向的なスタイル
7.8 選択的エクスポートと情報隠蔽
7.9 すべてを1つにする
7.10 検討
7.11 本章のまとめ
7.12 参考文献
7.13 演習問題
第8章 実行時の構造:オブジェクト
8.1 オブジェクト
8.2 モデリングツールとしてのオブジェクト
8.3 オブジェクトと参照を操作する
8.4 生成プロシージャ
8.5 さらに参照について
8.6 参照に対する操作
8.7 複合オブジェクトと拡張型
8.8 アタッチメント:参照と値の意味
8.9 参照を扱うということ:利点と危険
8.10 検討
8.11 本章のまとめ
8.12 参考文献
8.13 演習問題
第9章 メモリ管理
9.1 オブジェクトに何が起きるのか
9.2 呑気なアプローチ
9.3 メモリの回収に関する諸問題
9.4 プログラマ制御による開放(デアロケーション)
9.5 部品レベルのアプローチ
9.6 自動領域管理
9.7 参照カウント
9.8 ガーベジコレクション
9.9 ガーベジコレクションの実用上の諸問題
9.10 領域管理を備えた環境
9.11 本章のまとめ
9.12 参考文献
9.13 演習問題
第10章 総称性
10.1 水平方向と垂直方向の型の汎化
10.2 型のパラメータ化の必要性
10.3 総称クラス
10.4 配列
10.5 総称性のコスト
10.6 議論:これで終わりではない
10.7 本章のまとめ
10.8 参考文献
10.9 演習問題
11.1 基本的な信頼性のメカニズム
11.2 ソフトウェアの正しさについて
11.3 仕様を書く
11.4 ソフトウェアテキストに表明を導入する
11.6 ソフトウェア信頼性のための契約
11.7 表明を用いた作業
11.8 クラス不変表明
11.9 クラスが正しいのはいつか?
11.10 ADTとの関係
11.11 表明命令
11.12 ループ不変表明と変化表明
11.13 表明を使う
11.14 検討
11.15 本章のまとめ
11.16 参考文献
11.17 演習問題
12.1 例外処理の基本概念
12.2 例外処理
12.3 例外メカニズム
12.4 例外処理例
12.5 rescue句の仕事
12.6 高度な例外処理
12.7 検討
12.8 本章のまとめ
12.9 参考文献
12.10 演習問題
第13章 支援メカニズム
13.1 非オブジェクト指向ソフトウェアへのインタフェース
13.2 引数渡し
13.3 命令
13.4 式
13.5 文字列
13.6 入出力
13.7 識別子に関する語彙的慣例
13.8 本章のまとめ
13.9 演習問題
14.1 多角形と長方形
14.2 多相性
14.3 継承のための型付け
14.4 動的束縛
14.5 暫定特性と暫定クラス
14.6 再宣言の方法
14.7 継承の意味
14.8 暫定クラスの役割
14.9 検討
14.10 本章のまとめ
14.11 参考文献
14.12 演習問題
第15章 多重継承
15.1 多重継承の例
15.2 特性の改名
15.3 構造をフラットにする
15.4 反復継承
15.5 検討
15.6 本章のまとめ
15.7 参考文献
15.8 演習問題
第16章 継承のテクニック
16.1 継承と表明
16.2 グローバルな継承構造
16.3 凍結型特性
16.4 制約付き総称性
16.5 試行代入
16.6 型付けと再宣言
16.7 アンカー宣言
16.8 継承と情報隠蔽
16.9 本章のまとめ
16.10 参考文献
16.11 演習問題
第17章 型付け
17.1 型付けの問題
17.2 静的型付け:「なぜ」と「どうして」
17.3 共変性と子孫隠蔽
17.4 システム妥当性への最初のアプローチ
17.5 アンカー型に任せる
17.6 グローバル分析
17.7 多相的catcallに気づく
17.8 評価
17.9 完全な適合
17.10 本章のまとめ
17.11 参考文献
第18章 グローバルオブジェクトとグローバル定数
18.1 基本型の定数
18.2 定数の利用
18.3 クラス型定数
18.4 onceルーチンの応用
18.5 文字列型定数
18.6 ユニーク値
18.7 検討
18.8 本章のまとめ
18.9 参考文献
18.10 演習問題
オブジェクト技術用語集
参考文献
E.1 筆者以外の人の著作
E.2 筆者の著作